Dram and dram refresh method

ABSTRACT

To provide a DRAM that reduces loss time of accesses at the time of refresh and performs refresh for any other bank in parallel with normal accesses and is able to be used just like SRAM. DRAM comprises: refresh directing means for directing execution of refresh; bank specifying means for specifying a bank address of the memory cells to be refreshed; addressing means for addressing a row address of the memory cells to be refreshed in the specified bank; and execution means for refreshing the memory cells of the row address addressed in the specified bank in response to the direction of execution of refresh from the refresh directing means.

TECHNICAL FIELD

[0001] The present invention relates to a DRAM (dynamic random access memory) having banks and a method for refreshing such a DRAM.

BACKGROUND

[0002] For DRAM, there is a refresh scheme where row addresses are sequentially refreshed by updating them periodically using RT (refresh timer) and RAC (row address counter) as well as RAS-Only-Refresh (i.e., normal refresh). FIG. 4 depicts a schematic diagram of this scheme. If there are a number of banks, RAC specifies a bank address R-bank and a row address R-row to be refreshed. A bank address R-bank output by RAC is input to BS (bank selector) and a row address R-row is input to RS (row selector). Also input to BS is bank address (shown as bank in the drawing) to be accessed that has been input to AI (address input), while a row address (shown as row in the drawing) to be accessed, that has been input to AI, is input to RS.

[0003] BS outputs either the bank address R-bank or bank, while RS outputs either the row address R-row or row. Selection of a combination of the bank and row outputs or the R-bank and R-row outputs is specified by RT. RT comprises a timer circuit and specifies R-bank and R-row outputs at predetermined time intervals. This indication is also input to CE (column enable), where a column address is input that has been input to AI. CE temporarily stops outputting column addresses (i.e., column) while R-bank and R-row outputs are specified.

[0004] Either a bank, row address and column address to be accessed or a bank and row address to be refreshed is sent to a memory array. Since banks and row addresses common to the entire chip are switched, only one bank is accessible at a time. Therefore, in spite of the fact that there are a lot of banks that are not being accessed, they cannot be refreshed simultaneously. At the time of refresh, no access for normal reading and writing is performed and refresh is preferentially performed so that deterioration of availability of memory and deterioration of data rate occur.

PROBLEMS TO BE SOLVED BY THE INVENTION

[0005] It is therefore an object of the present invention to provide a DRAM that reduces loss time of accesses when refresh occurs. In parallel to normal read or write accesses the invention allows refresh operation on a different bank. Thus, it proposes to replace SRAM with DRAM.

SUMMARY OF INVENTION

[0006] In a first aspect of the present invention, there is provided a DRAM where memory cells are accessed by specifying a bank address, row address and column address, the DRAM comprising: refresh directing means for directing execution of refresh; bank specifying means for specifying a bank address of the memory cells to be refreshed; addressing means for addressing a row address of the memory cells to be refreshed in the specified bank; and execution means for refreshing the memory cells of the row address addressed in the specified bank in response to the direction of execution of refresh from the refresh directing means.

[0007] In another aspect of the invention, there is provided a method for refreshing a DRAM where memory cells are accessed by specifying a bank address, row address and column address, the method comprising the steps of: directing execution of refresh of the memory cells; specifying a bank address of the memory cells to be refreshed; addressing a row address of the memory cells to be refreshed in the specified bank; and refreshing the memory cells of the row address addressed in the specified bank in response to the direction of execution of refresh.

BRIEF DESCRIPTION OF THE DRAWINGS

[0008]FIG. 1 depicts an exemplar block diagram of configuration of DRAM of the present invention.

[0009]FIG. 2 depicts a circuit diagram of an example of ZLC.

[0010]FIG. 3 depicts a timing chart of the circuit shown in FIG. 2.

[0011]FIG. 4 depicts an exemplar block diagram of configuration of conventional DRAM.

DATAILED DESCRIPTION OF THE INVENTION

[0012] Now an embodiment of DRAM and a refresh method for DRAM according to the present invention will be described with reference to the accompanying drawings.

[0013] As shown in FIG. 1, DRAM 10 of the present invention comprises: refresh timer & enable (RTE) means (i.e., refresh directing means) for directing execution of refresh; a bank address counter (BAC) (i.e., bank specifying means) for specifying a bank address of memory cells to be refreshed; a Z-line counter (ZLC) (i.e., addressing means) for addressing a row address of the memory cells to be refreshed in the specified bank; and execution means for refreshing the memory cells of the row address addressed in the specified bank in response to the direction of execution of refresh from RTE.

[0014] BAC comprises means for holding the bank address of the memory cells to be refreshed; and means for updating the bank address held in the holding means in response to the direction of execution of refresh from RTE.

[0015] ZLC comprises means for holding the row address of the memory cells to be refreshed for each bank; and means for updating the row address held in the holding means in response to the direction of execution of refresh from RTE.

[0016] The execution means comprises a bank compare & refresh bank indicator (BCRBI) serving as means for detecting a match between the bank address to be accessed and the bank address to be refreshed; a Z-line selector (ZLS) serving as means for selecting the row address to be accessed or the row address to be refreshed based on the match between the bank addresses; and a column predecoder (CP) serving as means for temporarily stopping addressing of the column addresses when the row address to be refreshed is selected.

[0017] According to DRAM 10 of the present invention, the row address to be accessed and the row address to be refreshed are selected by ZLS contained in the bank. Input to ZLS are the row address to be refreshed from ZLC and the row address to be accessed from RP (row predecoder). Input to CP is the column address to be accessed. ZLC holds the row address to be refreshed, which is updated whenever refresh is performed. RP and CP hold the row address and column address to be accessed, respectively.

[0018] The row address and column address input to RP and CP respectively are sent from AI (address input for bank, row & column). The bank address input to AI is sent to each memory bank, wherein the bank addressed is accessed. The bank address input to AI is also sent to BCRBI. BCRBI is supplied with a signal directing execution of refresh from RTE and a signal specifying a bank to be refreshed from BAC.

[0019] BCRBI detects a match between the bank to be accessed and the bank to be refreshed. The result of the match detected is sent to ZLC and CP in each bank.

[0020] When the match is not detected, the bank to be refreshed and the bank to be accessed are specified respectively. For the bank to be refreshed, the signal is sent to ZLC and CP, wherein CP temporarily stops outputting the column addresses while ZLS addresses the row address held in ZLC to refresh. For the bank to be accessed, the memory cells are accessed that are addressed by the row address output through RP and ZLS and the column address output from CP.

[0021] When the match is detected, the access and refresh are directed to the same bank. At this time, ZLS selects the row address to be refreshed while CP temporarily stops outputting the column addresses in order to perform refresh.

[0022] While refresh is performed, the row address and column address to be accessed are held in RP and CP, respectively. When refresh is completed, the row address and column address to be accessed are output from RP and CP, respectively, then ZLS selects the row address to be accessed and then an access is performed. BCRBI informs to the memory controller that the match between the banks has been detected.

[0023] As shown in FIGS. 2 and 3, the predecoder generates four Z-lines using two bits TC of the address, wherein only one of four Z-lines is made high. When the address is counted up by one, the Z-line in high specified by the lower two address bits is shifted to an adjacent higher Z-line. This operates as a counter wherein Z-line in high is shifted every refresh.

[0024]FIG. 2 depicts lower four bits, wherein it is assumed that a similar circuit is provided as many as the number of row address bits. Reset should initialize the counter to a beginning address that may be any while most significant Z-line for each two bits, such as Z01/11 and Z23/11, is latched high. ZLC is counted up every refresh by lower two bits, while for higher bits thereof counting up is performed only when most significant Z-line is high.

[0025] In FIG. 3, PH1′ and PH2′ operate such that Z23/00 through Z23/11 is to be counted up only when most significant Z-line Z01/11 for lower bits is high. Therefore, Z01/11 and Z23/11 are selected to be high as an initial value. Note that PH2, PH2′ and PH1, PH1′ are non-overlap clocks that act on latch function and transfer function, respectively, wherein for the predecoder for lower two bits 0-1, a high level begins from Z01/11 and counts up (i.e., shifts) to Z01/00, Z01/01 and Z01/10 in sequence every refresh as shown in FIG. 3. For higher bits 2-3, counting up such as Z23/11 to Z23/00 is performed only when Z01/11 is high.

[0026] According to the aforementioned scheme, though a bank to be refreshed and timing for refresh are determined in the memory chip, these functions may be provided in the memory controller such that a bank to be refreshed and a bank to be accessed for reading and writing do not conflict each other.

[0027] Next, a refresh method using such a DRAM will be described. A signal specifying a bank to be refreshed or a bank address, row address and column address externally accessed are supplied to a bank to be refreshed or to be accessed, respectively. An access to a bank specified by AI and refresh of a bank specified by BAC are performed simultaneously.

[0028] If the bank to be refreshed and the bank to be accessed match, refresh is preferentially performed. BCRBI informs the memory controller that the access is delayed for one cycle. While refresh is performed, a row address and column address are latched into RP and CP, respectively. When refresh is completed, an access is immediately performed to an address already latched.

[0029] In this way, refresh is performed in parallel with normal accesses. When a bank to be refreshed and a bank to be accessed match, refresh and an access are performed in sequence. At this time, the memory controller is informed that the access is delayed for one cycle. When an access to the same bank is continuously performed after refresh, timing for those accesses is delayed for one cycle as well. An effect of refresh on normal accesses is kept to a minimum time loss, that is, one cycle of access delay due to refresh. As the number of banks increases, the probability of refresh of a bank conflicting with an external access to the same decreases, therefore, refresh will be performed with maintaining a loss of data transfer rate nearly zero.

[0030] In summary, the present invention allows processing refresh nearly in parallel with data accesses so that refresh is transparent to the outside. Thus it appears that as if refresh were not performed, so that DRAM of the present invention is able to be used just like SRAM.

[0031] Thereinbefore there has been described about the embodiments of DRAM and refresh method for DRAM according to the present invention, however, the present invention is not limited to these embodiments. The present invention will be improved, modified and changed by those skilled in the art without departing from the spirit and scope of the invention.

ADVANTAGES OF THE INVENTION

[0032] As mentioned above, according to the present invention, refresh is performed in parallel with normal accesses so that deterioration of memory transfer rate due to refresh operations is improved. Moreover, refresh operations are transparent to the outside, thus DRAM of the present invention is able to be used just like SRAM and further compatible with SRAM. 

1. A DRAM where memory cells are accessed by specifying a bank address, row address and column address, comprising: refresh directing means for directing execution of refresh; bank specifying means for specifying a bank address of the memory cells to be refreshed; addressing means for addressing a row address of the memory cells to be refreshed in the specified bank; and execution means for refreshing the memory cells of the row address addressed in the specified bank in response to the direction of execution of refresh from the refresh directing means.
 2. The DRAM according to claim 1, wherein said bank specifying means comprises: means for holding the bank address of the memory cells to be refreshed; and means for updating the bank address held in said holding means in response to the direction of execution of refresh from said refresh directing means, and wherein said addressing means comprises: means for holding the row address of the memory cells to be refreshed for each bank; and means for updating the row address held in said holding means in response to the direction of execution of refresh from said refresh directing means.
 3. The DRAM according to claim 1 or 2, wherein said execution means comprises: means for detecting a match between the bank address to be accessed and the bank address to be refreshed; means for selecting the row address to be accessed or the row address to be refreshed based on the match between the bank addresses; and means for temporarily stopping addressing of the column addresses when the row address to be refreshed is selected.
 4. A method for refreshing a DRAM where memory cells are accessed by specifying a bank address, row address and column address, comprising the steps of: directing execution of refresh of the memory cells; specifying a bank address of the memory cells to be refreshed; addressing a row address of the memory cells to be refreshed in the specified bank; and refreshing the memory cells of the row address addressed in the specified bank in response to the direction of execution of refresh.
 5. The method according to claim 4, wherein said bank specifying step comprises the steps of: in response to the direction of execution of refresh, reading the bank address held in bank address holding means that holds the bank address of the memory cells to be refreshed; and updating the bank address held in the bank address holding means after the reading step, and wherein said addressing step comprises the steps of: in response to the direction of execution of refresh, reading the row address held in address holding means that holds the row address of the memory cells to be refreshed; and updating the row address held in the address holding means after the reading step.
 6. The method according to claim 4 or 5, wherein said refreshing step comprises the steps of: detecting a match between the bank address to be accessed and the bank address to be refreshed; selecting the row address to be accessed or the row address to be refreshed based on the match between the bank addresses; and temporarily stopping addressing of the column addresses when the row address to be refreshed is selected.
 7. The method according to claim 6, wherein said selecting step comprises the steps of: selecting and refreshing the row address; after said refreshing step, selecting and accessing the row address to be accessed; and notifying a memory controller that an access to the row address is delayed. 